From: Keir Fraser Date: Tue, 15 Jun 2010 12:26:49 +0000 (+0100) Subject: ia64: fix build X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~11920 X-Git-Url: https://dgit.raspbian.org/%22http:/www.example.com/cgi/%22https:/%22bookmarks://%22Dat/%22http:/www.example.com/cgi/%22https:/%22bookmarks:/%22Dat?a=commitdiff_plain;h=f606c65a5339135e84d7a20c3d32e6f0408cab73;p=xen.git ia64: fix build Signed-off-by: Jan Beulich --- diff --git a/xen/arch/ia64/xen/machine_kexec.c b/xen/arch/ia64/xen/machine_kexec.c index 9558735433..49b490847f 100644 --- a/xen/arch/ia64/xen/machine_kexec.c +++ b/xen/arch/ia64/xen/machine_kexec.c @@ -73,49 +73,6 @@ static void ia64_machine_kexec(struct unw_frame_info *info, void *arg) BUG(); } -#if CONFIG_SMP -/* Need to implement some subset of hotplug-cpu - enough to - * send a cpu into rendevouz */ - -/* N.B: The tasks frozen parameter can probably be dropped - * This can probably be rolled into cpu_down - */ -static int _cpu_down(unsigned int cpu, int tasks_frozen) -{ - if (num_online_cpus() == 1) - return -EBUSY; - - if (!cpu_online(cpu)) - return -EINVAL; - -#ifndef XEN - /* XXX: What, if anything, should Xen do here? */ - /* Ensure that we are not runnable on dying cpu */ - old_affinity = current->cpus_allowed; - tmp = CPU_MASK_ALL; - cpu_clear(cpu, tmp); - set_cpus_allowed(current, tmp); -#endif - - cpu_clear(cpu, cpu_online_map); - - __cpu_die(cpu); - - return 0; -} - -static int cpu_down(unsigned int cpu) -{ - int err; - - /* Unlike Linux there is no lock, as there are no other callers - * and no other CPUS. */ - err = _cpu_down(cpu, 0); - - return 0; -} -#endif /* SMP */ - /* This should probably be an arch-hook called from kexec_exec() * Its also likely that it should be in the xen equivalent of * arch/ia64/kernel/process.c */ diff --git a/xen/include/asm-ia64/linux-xen/asm/processor.h b/xen/include/asm-ia64/linux-xen/asm/processor.h index e54e612c71..48fb4e0eee 100644 --- a/xen/include/asm-ia64/linux-xen/asm/processor.h +++ b/xen/include/asm-ia64/linux-xen/asm/processor.h @@ -188,6 +188,7 @@ struct cpuinfo_ia64 { }; DECLARE_PER_CPU(struct cpuinfo_ia64, cpu_info); +DECLARE_PER_CPU(int, cpu_state); /* * The "local" data variable. It refers to the per-CPU data of the currently executing diff --git a/xen/include/asm-ia64/linux-xen/asm/smp.h b/xen/include/asm-ia64/linux-xen/asm/smp.h index 7cee1a3aa6..9783d15097 100644 --- a/xen/include/asm-ia64/linux-xen/asm/smp.h +++ b/xen/include/asm-ia64/linux-xen/asm/smp.h @@ -60,6 +60,8 @@ extern struct smp_boot_data { extern char no_int_routing __devinitdata; extern cpumask_t cpu_online_map; +#define cpu_is_offline(cpu) unlikely(!cpu_online(cpu)) + DECLARE_PER_CPU(cpumask_t, cpu_core_map); DECLARE_PER_CPU(cpumask_t, cpu_sibling_map); extern int smp_num_siblings; diff --git a/xen/include/asm-ia64/linux-xen/linux/cpu.h b/xen/include/asm-ia64/linux-xen/linux/cpu.h deleted file mode 100644 index 2d0a8b76d9..0000000000 --- a/xen/include/asm-ia64/linux-xen/linux/cpu.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef _ASM_IA64_CPU_H_ -#define _ASM_IA64_CPU_H_ - -#include -#include -#include -#include - -#ifndef XEN -struct ia64_cpu { - struct cpu cpu; -}; - -DECLARE_PER_CPU(struct ia64_cpu, cpu_devices); -#endif - -DECLARE_PER_CPU(int, cpu_state); - -#ifndef XEN -extern int arch_register_cpu(int num); -#ifdef CONFIG_HOTPLUG_CPU -extern void arch_unregister_cpu(int); -#endif -#endif - -#endif /* _ASM_IA64_CPU_H_ */